﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using app_inventario.LogicaNegocio;

namespace app_inventario.Presentacion
{
    /// <summary>
    /// Lógica de interacción para Ingresar.xaml
    /// </summary>
    public partial class Ingresar : Window
    {
        public Ingresar()
        {
            InitializeComponent();
        }

        private void btn_Ingresar_Click(object sender, RoutedEventArgs e)
        {
            if (txt_Producto.Text == "" || txt_Marca.Text=="" || txt_Precio.Text == "" || txt_Cantidad.Text == "")
            {
                MessageBox.Show("Faltan datos sobre el producto","Mensaje",MessageBoxButton.OK,MessageBoxImage.Warning);
            }
            else
            {
                var llamarMarca = admProducto.buscarMarca(txt_Marca.Text);
                if (llamarMarca != null)
                {
                    var llamarCategoria = admProducto.buscaCategoria(cboCategoria.Text);
                    string mensaje = admProducto.ingresarProducto(txt_Producto.Text,llamarCategoria.ID_categoria,llamarMarca.ID_marca,Convert.ToInt32(txt_Precio.Text),Convert.ToInt32(txt_Cantidad.Text));
                    MessageBox.Show(mensaje, "Mensaje", MessageBoxButton.OK, MessageBoxImage.Information);
                }
                else
                {
                    admProducto.ingresaMarca(txt_Marca.Text);
                    var llamarCategoria = admProducto.buscaCategoria(cboCategoria.Text);
                    var traerMarca = admProducto.buscarMarca(txt_Marca.Text);
                    string mensaje = admProducto.ingresarProducto(txt_Producto.Text, llamarCategoria.ID_categoria, traerMarca.ID_marca, Convert.ToInt32(txt_Precio.Text), Convert.ToInt32(txt_Cantidad.Text));
                    MessageBox.Show(mensaje, "Mensaje", MessageBoxButton.OK, MessageBoxImage.Information);
                    Limpiar();
                }
            }
        }

        private void Limpiar()
        {
            txt_Producto.Clear();
            cboCategoria.SelectedIndex = -1;
            txt_Marca.Clear();
            txt_Precio.Clear();
            txt_Cantidad.Clear();
        }

        private void txt_Precio_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.Key >= Key.D0 && e.Key <= Key.D9 || e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9)
            {
                e.Handled = false;
            }
            else
            {
                e.Handled = true;
            }
        }

        private void txt_Cantidad_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.Key >= Key.D0 && e.Key <= Key.D9 || e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9)
            {
                e.Handled = false;
            }
            else
            {
                e.Handled = true;
            }
        }
    }
}
